#include<stdio.h>
int main() {
    int T, A[100] = { 0 },  B[100] = { 0 }, sz_a = 0, sz_b = 0;
    scanf("%d", &T);
    //T组数据
    while (T--) {
        //A数组输入
        scanf("%d", &sz_a);
        for (int i = 0; i < sz_a; i++)
            scanf("%d", &A[i]);
        //B数组输入
        scanf("%d", &sz_b);
        for (int i = 0; i < sz_b; i++)
            scanf("%d", &B[i]);
        //数组合并
        int C[200] = { 0 };
        int sz_c = 0, temp_sz_a = 0, temp_sz_b = 0;
        while (temp_sz_a < sz_a && temp_sz_b < sz_b) {
            if (A[temp_sz_a] <= B[temp_sz_b])
                C[sz_c++] = A[temp_sz_a++];
            else
                C[sz_c++] = B[temp_sz_b++];
        }
        //当剩下A数组时
        while (temp_sz_a < sz_a)
            C[sz_c++] = A[temp_sz_a++];
        //当剩下B数组时
        while (temp_sz_b < sz_b)
            C[sz_c++] = B[temp_sz_b++];
        //打印
        for (int i = 0; i < sz_c; i++) {
            printf("%d", C[i]);
            if (i != sz_c - 1)
                printf(" ");
        }
        printf("\n");
    }
    return 0;
}